package main

import (
	"fmt"
	"math"
	"strings"
)

func BinaryFormat(n int32) string {
	a := uint32(n)
	sb := strings.Builder{}
	c := uint32(math.Pow(2, 31))
	for i := 0; i < 32; i++ {
		if a&c > 0 {
			sb.WriteString("1")
		} else {
			sb.WriteString("0")
		}
		c >>= 1
	}

	return sb.String()
}

func main() {
	fmt.Println("打印数值55的二进制为：", BinaryFormat(55))
	fmt.Println("打印数值-55的二进制为：", BinaryFormat(-55))

	fmt.Println("打印数值65533的二进制为：", BinaryFormat(65533))
	fmt.Println("打印数值-65533的二进制为：", BinaryFormat(-65533))

	fmt.Println("打印数值200的二进制为：", BinaryFormat(200))
	fmt.Println("打印数值-200的二进制为：", BinaryFormat(-200))

}
